package com.czz.manage.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.czz.manage.entity.Course;
import com.czz.manage.query.AdminCourseQuery;
import com.czz.manage.query.TeacherCourseQuery;
import com.czz.manage.vo.CourseInfoVo;
import com.czz.manage.vo.CoursePublishVo;

import java.util.List;
import java.util.Map;

/**
 * @ClassName: CourseService
 * @Author Czz
 * @Date 2020/1/19
 * @Time 20:29
 **/
public interface CourseService extends IService<Course> {
    String saveCourseInfo(CourseInfoVo courseInfoVo);
    CourseInfoVo getCourseInfoById(String id);
    void updateCourseInfoById(CourseInfoVo courseInfoVo);
    void getTeacherCoursePageList(Page<Course> pageParam, String teacherId,TeacherCourseQuery teacherCourseQuery);
    void deleteCourseById(String id);
    CoursePublishVo getCoursePublishById(String courseId);
    void publishCourseById(String courseId, Integer status);
    List<Course> getAdminCoursePageList(Page<Course> pageParam, AdminCourseQuery courseQuery);
    void updateCourseStatus(String id, Integer status);
    List<Map<String, String>> getCourseByLikeName(String name);
}
